package es.eupt.amazingpi.sync;

import es.eupt.amazingpi.model.juego.Jugador;

public class Pi {

	private boolean pi;
	private Jugador solicitante;
	
	public Jugador getSolicitante() {
		return solicitante;
	}
	
	public synchronized boolean solicitarPi(Jugador jugador) {
		if (!pi){
			pi = true;
			solicitante = jugador;
			System.out.println("El jugador " + jugador.getNombre() + " ha hecho PI");
			return true;
		}
		return false;
	}
	
	public synchronized boolean consultarPi() {
		return pi;
	}
	
	public synchronized boolean restaurarPi() {
		pi = false;
		solicitante = null;
		System.out.println("PI vuelve a estar libre");
		return false;
	}
}
